package com.jt.controller;

import com.jt.pojo.AxiosPOJO;
import org.springframework.web.bind.annotation.*;

//在后端接受前端axios发来的请求
@RestController
@CrossOrigin //允许当前类中的所有方法执行跨域操作！！！
public class AxiosController {
    /**
     * axios入门案例
     * url:http://localhost:8080/hello
     */
    @GetMapping("/hello")
    public String hello(){
        return "Vue的Ajax异步调用";
    }

    @GetMapping("/axios")
    public String getAxios(Integer id){
        return "动态获取数据"+id;
    }

    @GetMapping("/axios/{id}")
    public String axiosRestFul(@PathVariable Integer id){
        return "动态获取数据"+id;
    }

    @GetMapping("/axiosParams")
    public String axiosParams(Integer id){
        return "动态获取数据"+id;
    }

    /**
     * 动态接受post请求 并接收JSON参数
     * 语法；
     *      如果前端传递的是 一个JSON字符串，则使用注解@ResquestBody将JSON串转化为对象
     * @param axiosPOJO
     * @return
     */
    @PostMapping("/addAxios")
    public String addAxios(@RequestBody AxiosPOJO axiosPOJO){
        return "动态获取数据"+axiosPOJO;
    }

    //利用form表单接收数据
    @PostMapping("/addAxiosForm")
    public String addAxiosForm(AxiosPOJO axiosPOJO){
        return "动态获取数据"+axiosPOJO;
    }

    @GetMapping("/getParams")
    public String getParams(Integer id){
        return "动态获取数据"+id;
    }
}
